package lojaVirtual.manterCadastro.controller;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;

import lojaVirtual.manterCadastro.dao.CategoriaDao;
import lojaVirtual.manterCadastro.pojo.Categoria;



@ManagedBean
@SessionScoped
public class CategoriaBean implements Serializable {

	private static final long serialVersionUID = 1L;
	private Categoria categoria;
	private List<Categoria> categorias;
	private CategoriaDao categoriaDao;

	
	public CategoriaBean(){
		
		this.categoriaDao = new CategoriaDao();
		this.categoria = new Categoria();
		this.categorias= new ArrayList<Categoria>();
		this.categorias = this.categoriaDao.list();
		
	}
	
	public void save(){
		
		this.categoriaDao.save(categoria);
		
		categoria = new Categoria();
		categorias = this.categoriaDao.list();
		//return "categoria.xhtml";
	}
	
	public void edit(){
		
		//this.categoria = this.categoriaDao.find( categoria.getCat_id());
		//this.categorias = this.categoriaDao.list();
		//return "categoria.xhtml";
	}
	
	public List<Categoria> categoriasAtivas(){
		
		return this.categoriaDao.listByStatus();
	}
	
	public String delete( ActionEvent evento){
		
		this.categoriaDao.delete(categoria);
		
		categoria = new Categoria();
		categorias = this.categoriaDao.list();
		
		return "categoria.xhtml";
		
	}

	public Categoria getCategoria() {
		return categoria;
	}

	public void setCategoria(Categoria categoria) {
		this.categoria = categoria;
	}

	public List<Categoria> getCategorias() {
		return categorias;
	}

	public void setCategorias(List<Categoria> listCat) {
		this.categorias = listCat;
	}	
	
	public Categoria getCategoriaById( int cat_id ){
		
		return this.categoriaDao.find(cat_id);
	}
	
}
